using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ComponentModel;
using System.Collections;

/// <summary>
/// A translation used by one or more resources
/// </summary>
public class RBTranslation {
    private string languageCode = string.Empty,
                   translation = string.Empty,
                   comment = string.Empty;
    /// <summary>
    /// Gets or sets the language code of this translation.
    /// </summary>
    /// <value>The language code.</value>
    public string LanguageCode {
        get { return languageCode; }
        set { languageCode = value; }
    }
    /// <summary>
    /// Gets or sets the translated text.
    /// </summary>
    /// <value>The translation.</value>
    public string Translation {
        get { return translation; }
        set { translation = value; }
    }
    /// <summary>
    /// Gets or sets the comment.
    /// </summary>
    /// <value>The comment.</value>
    public string Comment {
        get { return comment; }
        set { comment = value; }
    }

    /// <summary>
    /// Initializes a new <see cref="RBTranslation"/>.
    /// </summary>
    public RBTranslation() { }

    /// <summary>
    /// Initializes a new <see cref="RBTranslation"/>.
    /// </summary>
    /// <param name="languageCode">The language code.</param>
    /// <param name="translation">The translated text.</param>
    /// <param name="comment">The comment.</param>
    public RBTranslation(string languageCode, string translation, string comment) {
        this.languageCode = languageCode;
        this.translation = translation;
        this.comment = comment;
    }

    /// <summary>
    /// Returns the translated text.
    /// </summary>
    /// <returns>
    /// A <see cref="T:System.String"/> that represents the current <see cref="T:System.Object"/>.
    /// </returns>
    public override string ToString() {
        return Translation;
    }
}